From b21fe1745c6b209f1d2fc9e375dfb391e72cbdd1 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sun, 21 Dec 2003 00:59:46 +0000 Subject: [PATCH] New function to emit the "cancel" signal on a menu shell. Sun Dec 21 01:54:40 2003 Matthias Clasen * gtk/gtkmenushell.h: * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function to emit the "cancel" signal on a menu shell. * gtk/gtkmenu.c (gtk_menu_key_press): * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the new function instead of directly emitting the signal. (#81803, Owen Taylor) --- ChangeLog | 15 +++++++++++++-- ChangeLog.pre-2-10 | 15 +++++++++++++-- ChangeLog.pre-2-4 | 15 +++++++++++++-- ChangeLog.pre-2-6 | 15 +++++++++++++-- ChangeLog.pre-2-8 | 15 +++++++++++++-- docs/reference/ChangeLog | 4 ++++ docs/reference/gtk/gtk-sections.txt | 1 + gtk/gtkmenu.c | 4 +--- gtk/gtkmenubar.c | 2 +- gtk/gtkmenushell.c | 16 ++++++++++++++++ gtk/gtkmenushell.h | 1 + gtk/gtkoptionmenu.c | 2 +- 12 files changed, 90 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 70195413ce..1d62670f2e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,20 @@ +Sun Dec 21 01:54:40 2003 Matthias Clasen + + * gtk/gtkmenushell.h: + * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function + to emit the "cancel" signal on a menu shell. + + * gtk/gtkmenu.c (gtk_menu_key_press): + * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): + * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the + new function instead of directly emitting the + signal. (#81803, Owen Taylor) + Sun Dec 21 00:39:50 2003 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): - Fix the "language_set" blurb. (#129720, Christian Rose) + Fix the "language_set" blurb. - Sat Dec 20 22:06:03 2003 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 70195413ce..1d62670f2e 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,9 +1,20 @@ +Sun Dec 21 01:54:40 2003 Matthias Clasen + + * gtk/gtkmenushell.h: + * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function + to emit the "cancel" signal on a menu shell. + + * gtk/gtkmenu.c (gtk_menu_key_press): + * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): + * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the + new function instead of directly emitting the + signal. (#81803, Owen Taylor) + Sun Dec 21 00:39:50 2003 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): - Fix the "language_set" blurb. (#129720, Christian Rose) + Fix the "language_set" blurb. - Sat Dec 20 22:06:03 2003 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 70195413ce..1d62670f2e 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,9 +1,20 @@ +Sun Dec 21 01:54:40 2003 Matthias Clasen + + * gtk/gtkmenushell.h: + * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function + to emit the "cancel" signal on a menu shell. + + * gtk/gtkmenu.c (gtk_menu_key_press): + * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): + * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the + new function instead of directly emitting the + signal. (#81803, Owen Taylor) + Sun Dec 21 00:39:50 2003 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): - Fix the "language_set" blurb. (#129720, Christian Rose) + Fix the "language_set" blurb. - Sat Dec 20 22:06:03 2003 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 70195413ce..1d62670f2e 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,9 +1,20 @@ +Sun Dec 21 01:54:40 2003 Matthias Clasen + + * gtk/gtkmenushell.h: + * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function + to emit the "cancel" signal on a menu shell. + + * gtk/gtkmenu.c (gtk_menu_key_press): + * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): + * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the + new function instead of directly emitting the + signal. (#81803, Owen Taylor) + Sun Dec 21 00:39:50 2003 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): - Fix the "language_set" blurb. (#129720, Christian Rose) + Fix the "language_set" blurb. - Sat Dec 20 22:06:03 2003 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 70195413ce..1d62670f2e 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,9 +1,20 @@ +Sun Dec 21 01:54:40 2003 Matthias Clasen + + * gtk/gtkmenushell.h: + * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function + to emit the "cancel" signal on a menu shell. + + * gtk/gtkmenu.c (gtk_menu_key_press): + * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): + * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the + new function instead of directly emitting the + signal. (#81803, Owen Taylor) + Sun Dec 21 00:39:50 2003 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): - Fix the "language_set" blurb. (#129720, Christian Rose) + Fix the "language_set" blurb. - Sat Dec 20 22:06:03 2003 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate diff --git a/docs/reference/ChangeLog b/docs/reference/ChangeLog index 83462bae39..a39ee8eae0 100644 --- a/docs/reference/ChangeLog +++ b/docs/reference/ChangeLog @@ -1,3 +1,7 @@ +Sun Dec 21 01:58:33 2003 Matthias Clasen + + * gtk/gtk-sections.txt: Add gtk_menu_shell_cancel. + Thu Dec 18 01:24:35 2003 Matthias Clasen * gtk/gtk-sections.txt: Add gtk_message_dialog_set_markup diff --git a/docs/reference/gtk/gtk-sections.txt b/docs/reference/gtk/gtk-sections.txt index 0b7b82d9ca..98673762db 100644 --- a/docs/reference/gtk/gtk-sections.txt +++ b/docs/reference/gtk/gtk-sections.txt @@ -1983,6 +1983,7 @@ gtk_menu_shell_select_item gtk_menu_shell_select_first gtk_menu_shell_deselect gtk_menu_shell_activate_item +gtk_menu_shell_cancel GtkMenuDirectionType GTK_MENU_SHELL diff --git a/gtk/gtkmenu.c b/gtk/gtkmenu.c index 34bc4b20e5..57d943441f 100644 --- a/gtk/gtkmenu.c +++ b/gtk/gtkmenu.c @@ -2461,9 +2461,7 @@ gtk_menu_key_press (GtkWidget *widget, */ if (event->keyval == keyval && (mods & event->state) == mods) - { - g_signal_emit_by_name (menu, "cancel", 0); - } + gtk_menu_shell_cancel (menu_shell); g_free (accel); diff --git a/gtk/gtkmenubar.c b/gtk/gtkmenubar.c index d35d03b309..30a1ff74cd 100644 --- a/gtk/gtkmenubar.c +++ b/gtk/gtkmenubar.c @@ -582,7 +582,7 @@ _gtk_menu_bar_cycle_focus (GtkMenuBar *menubar, g_list_free (menubars); } - g_signal_emit_by_name (menubar, "cancel", 0); + gtk_menu_shell_cancel (GTK_MENU_SHELL (menubar)); if (to_activate) g_signal_emit_by_name (to_activate, "activate_item"); diff --git a/gtk/gtkmenushell.c b/gtk/gtkmenushell.c index 80eb0d9749..5fe743fc60 100644 --- a/gtk/gtkmenushell.c +++ b/gtk/gtkmenushell.c @@ -1182,3 +1182,19 @@ _gtk_menu_shell_get_popup_delay (GtkMenuShell *menu_shell) return popup_delay; } } + +/** + * gtk_menu_shell_cancel: + * @menu_shell: a #GtkMenuShell + * + * Cancels the selection within the menu shell. + * + * Since: 2.4 + */ +void +gtk_menu_shell_cancel (GtkMenuShell *menu_shell) +{ + g_return_if_fail (GTK_IS_MENU_SHELL (menu_shell)); + + g_signal_emit (menu_shell, menu_shell_signals[CANCEL], 0); +} diff --git a/gtk/gtkmenushell.h b/gtk/gtkmenushell.h index 8d821bde03..512ba5d3eb 100644 --- a/gtk/gtkmenushell.h +++ b/gtk/gtkmenushell.h @@ -116,6 +116,7 @@ void _gtk_menu_shell_select_last (GtkMenuShell *menu_shell, gboolean search_sensitive); void _gtk_menu_shell_activate (GtkMenuShell *menu_shell); gint _gtk_menu_shell_get_popup_delay (GtkMenuShell *menu_shell); +void gtk_menu_shell_cancel (GtkMenuShell *menu_shell); #ifdef __cplusplus } diff --git a/gtk/gtkoptionmenu.c b/gtk/gtkoptionmenu.c index 2c8dac1236..02ed6a315a 100644 --- a/gtk/gtkoptionmenu.c +++ b/gtk/gtkoptionmenu.c @@ -305,7 +305,7 @@ gtk_option_menu_remove_menu (GtkOptionMenu *option_menu) if (option_menu->menu) { if (GTK_MENU_SHELL (option_menu->menu)->active) - g_signal_emit_by_name (option_menu->menu, "cancel", 0); + gtk_menu_shell_cancel (GTK_MENU_SHELL (option_menu->menu)); gtk_menu_detach (GTK_MENU (option_menu->menu)); } -- 2.30.2